Protocol Buffers
https://scrapbox.io/files/66f2c22f58d05d001d097643.png
https://protobuf.dev/programming-guides/proto3/
Google によって 2008 年に OSS 化された IDL
gRPC の シリアライズ に用いられている
バイナリ形式にシリアライズするので、サイズが小さく高速な通信が可能
型安全にデータのやり取りが可能
プログラミング言語からは独立しており、protoc コマンドでコードを生成することが可能
2024 年現在サポート言語: C++, C#, Java, Kotlin, Objective-C, PHP, Python, Ruby
これ以外の言語は、サードパーティプラグインとして公開されている
https://github.com/protocolbuffers/protobuf/blob/main/docs/third_party.md
これにより Schema first な開発が可能に